<?php

class InvalidArgumentException2 extends Exception
{
    public function __construct($error, $error_message, $type = 'invalidargument')
    {
        parent::__construct($error, $error_message, $type);
    }
}

class SessionCompromisedException extends Exception
{
    public function __construct($error, $error_message, $type = 'sessioncompromised')
    {
        parent::__construct($error, $error_message, $type);
    }
}

class DatabaseErrorException extends Exception
{
    public function __construct($error, $error_message, $type = 'mysql', $sql = null)
    {
        parent::__construct($error_message, $error, $type, $sql);
    }

}

class NoSessionException extends Exception
{
    public function __construct($error, $error_message, $type = 'nosession')
    {
        parent::__construct($error, $error_message, $type);
    }
}

class InternalErrorException extends Exception
{
    public function __construct($error, $error_message, $type = 'internalerror')
    {
        parent::__construct($error, $error_message, $type);
    }
}

class IllegalAccessException extends Exception
{
    public function __construct($error, $error_message, $type = 'illegalaccess')
    {
        parent::__construct($error, $error_message, $type);
    }
}
